home *** CD-ROM | disk | FTP | other *** search
/ Acorn RISC PD-CD 1 / Acorn RISC PD-CD 1.iso / utilities / _graphics / graphics / _greyedit / docs / guide next >
Encoding:
Text File  |  1993-06-22  |  28.3 KB  |  803 lines

  1. >Guide
  2.  
  3. -----------------------------------------------------------------------------
  4. This program is SHAREWARE. It is *not* free software. You may evaluate it for
  5. a two-week trial period. After this, you are required to register for further
  6. usage, or else destroy your copy. Refer to the end of this guide for details.
  7. -----------------------------------------------------------------------------
  8.  
  9. _______________________________________________________________________________
  10.  
  11. GreyEdit 1.35                                      ---------------------------
  12.                                                     This program is SHAREWARE
  13. Version date : 22 Jun 1993                         ---------------------------
  14.  
  15. ----------------
  16. - Introduction -
  17. ----------------
  18.  
  19. GreyEdit can process and edit 256-level greyscale (digitized) images. In
  20. addition it can grab video images from the Zeridajh Video Digitiser podule,
  21. when this is present.
  22.  
  23. Several extremely fast filter algorithms, histogram equalization, range
  24. expansion and inversion may be applied to whole images. In addition, noise
  25. pixels may be edited by hand, and sides of images may be cut off, optionally
  26. aided by zoom functions for precision editing.
  27.  
  28.  
  29. -------------------------
  30. - Using the application -
  31. -------------------------
  32.  
  33. To start up GreyEdit, double-click on the '!GreyEdit' icon.
  34.  
  35. It will install itself on the icon bar, and clicking MENU on GreyEdit's icon
  36. pops up the main menu, giving the usual 'Info' and 'Quit' options, and others,
  37. which will be discussed further on.
  38.  
  39. The main menu is also popped up when clicking MENU on the image window, once
  40. an image is loaded.
  41.  
  42.  
  43. -----------------
  44. - The main menu -
  45. -----------------
  46.  
  47. This menu, popped up by clicking MENU on GreyEdit's iconbar icon, or clicking
  48. MENU on an image window, contains a number of icons (some of which lead to
  49. submenu's/windows). The functions of the icons will be discussed below.
  50.  
  51. The main purpose of the main menu is to provide access to GreyEdit's control
  52. window (via the 'Control' icon), which contains (in groups) most of the
  53. available options and controls.
  54.  
  55. --------------
  56. | Image info |
  57. --------------
  58.  
  59. This icon gives access to an information window, in which the resolution,
  60. filename, etc. of the current image is displayed.
  61.  
  62. Clicking on this icon will make this window permanent (but it can be closed
  63. again by clicking on its close icon).
  64.  
  65. -----------
  66. | Control |
  67. -----------
  68.  
  69. Gives access to GreyEdit's control window, which contains most of GreyEdit's
  70. options and controls, divided into groups.
  71.  
  72. Clicking on this icon will make this window permanent (but it can be closed
  73. again by clicking on its close icon).
  74.  
  75. Clicking MENU on the control window pops up a menu with short-hands for all
  76. the groups. Clicking on one 'pan's to the appropiate group.
  77.  
  78. Several types of icons appear in the control window :
  79.  
  80. - Toggle icons. These are square, and clicking on them switches the
  81.   corresponding option on (red square in its middle) or off ('closed' box).
  82. - Radio icon sets. Icons in these sets are diamond shaped, and act like the
  83.   toggle icons, but only one of them may be on. Switching any one on will
  84.   switch off all the others in the same set (hence the name 'radio' icons).
  85. - Writable icons. These are square icons with a border and a white background,
  86.   in which you may click an subsequently enter a value or text.
  87. - Button icons. These are round, and clicking on them executes some function.
  88.   They do not change their appearance when clicked on.
  89. - 'Up/down' button icons. These are triangular, and increase or decrease some
  90.   value in the writable icon in between them. When clicking ADJUST instead of
  91.   SELECT or MENU, 'up' decreases and 'down' increases (i.e. reverse). These
  92.   icons are mainly used in the scaling and zoom groups.
  93.  
  94. The functions of the icons in the control window are discussed below. Icons are
  95. identified by giving their 'path', i.e. group name (name on the border
  96. surrounding the group), if appropiate followed by sub-category (medium grey
  97. heading), followed by the icon's own name, seperated by '|'s.
  98.  
  99. \\\\\\\\\
  100.  Process
  101. /////////
  102.  
  103. Functions to do with image processing. There are several fast image filters and
  104. an option to switch on pixel-editing and cutting, among others.
  105.  
  106. For more technical details on the image processing algorithms, refer to
  107. 'Technical details'.
  108.  
  109. \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  110.  Process | Process | Expand range
  111. //////////////////////////////////
  112.  
  113. Clicking on this button will expand the greyvalue range of the image.
  114.  
  115. This algorithm determines the lowest and highest used greyvalues in the image,
  116. and expands the range between these values to the full 0-255 range. This
  117. increases the visual contrast of images that do not use the full available
  118. greyscale range.
  119.  
  120. \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  121.  Process | Process | Equalize
  122. //////////////////////////////
  123.  
  124. Clicking on this button will perform 'histogram equalization' on the image.
  125.  
  126. This algorithm effectively measures the greyvalue contents of the image and
  127. attempts to balance greyvalue use. It can have a dramatic enhancing effect on
  128. some images. However, on low-contrast images it can have an equally dramatic
  129. degrading effect (they become much lighter and more 'harsh').
  130.  
  131. \\\\\\\\\\\\\\\\\\\\\\\\\\\\
  132.  Process | Process | Invert
  133. ////////////////////////////
  134.  
  135. Clicking on this button will 'invert' the image.
  136.  
  137. This means that the entire greyvalue scale from black to white is reversed,
  138. thus producing a 'negative' image. Its effect may be reversed by using it a
  139. second time.
  140.  
  141. \\\\\\\\\\\\\\\\\\
  142.  Process | Filter
  143. //////////////////
  144.  
  145. Clicking on these buttons applies a particular filter algorithm on the image.
  146.  
  147. \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  148.  Process | Filter | Noise (soft)
  149. /////////////////////////////////
  150.  
  151. This filter will remove noise from the image.
  152.  
  153. This is the 'soft' version of the noise removal filters, which generally does
  154. not affect many pixels which are not 'noise pixels', but has the disadvantage
  155. that it will usually not succeed in removing all the noise from an image
  156. either.
  157.  
  158. \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  159.  Process | Filter | Noise (strong)
  160. ///////////////////////////////////
  161.  
  162. This filter, like the soft noise filter, will remove noise from the image.
  163.  
  164. This 'strong' version will (as its name suggests) remove more noise, but has
  165. the disadvantage of possibly affecting much more pixels which aren't noise.
  166.  
  167. \\\\\\\\\\\\\\\\\\\\\\\\\\
  168.  Process | Filter | Gauss
  169. //////////////////////////
  170.  
  171. This 'lowpass' filter has the effect of 'smoothing' the image.
  172.  
  173. The smoothing effect is somewhat weaker than that of the Average filter. As a
  174. 'smoother', it also effectively removes noise from the image, but the noise
  175. filters should be used by preference to do this, as a lot of image detail is
  176. lost using smoothing filters.
  177.  
  178. \\\\\\\\\\\\\\\\\\\\\\\\\\\\
  179.  Process | Filter | Average
  180. ////////////////////////////
  181.  
  182. This 'lowpass' filter is similar to the Gauss filter, but has a stronger 
  183. 'smoothing' effect.
  184.  
  185. \\\\\\\\\\\\\\\\\\\\\\\\\\\\
  186.  Process | Filter | Laplace
  187. ////////////////////////////
  188.  
  189. This 'highpass' filter will, in contrast to the Gauss and Average filters,
  190. enhance detail in the image.
  191.  
  192. It has the effect of amplifying local image details, but frequently has the
  193. side-effect of making the image look rather 'harsh'.
  194.  
  195. \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  196.  Process | Filter | X-gradient Sobel
  197. /////////////////////////////////////
  198.  
  199. This filter effectively has a kind of '3-D' effect on the image. 
  200.  
  201. It reacts on horizontal 'gradients' in the image.
  202.  
  203. \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  204.  Process | Filter | Y-gradient Sobel
  205. /////////////////////////////////////
  206.  
  207. This filter is similar to the X-gradient Sobel filter, but reacts on vertical
  208. 'gradients' in the image.
  209.  
  210. \\\\\\\\\\\\\\\\\\\\\\\\\\\\
  211.  Process | Filter | Maximum
  212. ////////////////////////////
  213.  
  214. This filter amplifies the presence of the peak greyvalues in the image.
  215.  
  216. \\\\\\\\\\\\\\\\\\\\\\\\\\\\
  217.  Process | Filter | Minimum
  218. ////////////////////////////
  219.  
  220. This filter amplifies the presence of the lowest greyvalues in the image.
  221.  
  222. \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  223.  Process | Filter | Sharpen (soft)
  224. ///////////////////////////////////
  225.  
  226. This filter sharpens the image in a quite subtle way.
  227.  
  228. \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  229.  Process | Filter | Sharpen (strong)
  230. /////////////////////////////////////
  231.  
  232. This filter sharpens the image more harshly than the soft version.
  233.  
  234. \\\\\\\\\\\\\\\\\\\\\\\\
  235.  Process | Filter | Lee
  236. ////////////////////////
  237.  
  238. This filter 'crispens' the image.
  239.  
  240. \\\\\\\\\\\\\\\\\\\\\\\\\\
  241.  Process | Options | Edit
  242. //////////////////////////
  243.  
  244. Toggles the 'edit' flag.
  245.  
  246. When ON, the image may be edited using the mouse pointer. While the mouse
  247. pointer is in the image window, its center will change to the greyvalue of the
  248. pixel underneath it, so it is easier to identify a particular pixel among
  249. others.
  250.  
  251. Pixel editing
  252. -------------
  253. Pressing SELECT or ADJUST on a particular pixel enables you to remove noise
  254. pixels by hand :
  255.  
  256. - SELECT will change the greyvalue of the pixel to the average greyvalue of its
  257.   surrounding neighbors, i.e. it adds all eight surrounding pixels' greyvalues
  258.   and assigns this value DIV 8 to the target pixel. This 'smooths out' noisy
  259.   pixels which can thus be removed with accuracy by hand, in preference to
  260.   using the noise or smoothing filters.
  261. - ADJUST has a similar effect, except the target pixel's greyvalue itself is
  262.   considered in the averaging, i.e. the eight surrounding pixels' greyvalues
  263.   and the target pixel's greyvalue are added, and the resulting value DIV 9 is
  264.   assigned to the target pixel. This is equivalent to what the 'Average' filter
  265.   does.
  266.  
  267. Cutting
  268. -------
  269. Pressing SELECT or ADJUST while holding down the SHIFT key enables you to cut
  270. off the top/left or bottom/right parts of the image :
  271.  
  272. - SELECT will cut off the top/left part of the image : the pixel clicked on
  273.   will become the new top left pixel
  274. - ADJUST will cut off the bottom/right part of the image : the pixel clicked on
  275.   will become the new bottom right pixel
  276.  
  277. NOTE : The zoom options may be used while editing, so it is very easy to locate
  278. and 'kill' individual pixels, and perform precision cutting. The pixel info
  279. window (see below) is useful as a further aid in precision cutting and editing.
  280.  
  281. \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  282.  Process | Options | Pixel info
  283. ////////////////////////////////
  284.  
  285. Clicking on this button will pop up the pixel info window.
  286.  
  287. When editing is enabled, this shows the coordinates and greyvalue of the pixel
  288. at the mouse pointer. The top coordinates shown in the window are pixel offsets
  289. from the top left of the image, while the bottom pair represents the offsets
  290. from the bottom right of the image.
  291.  
  292. This information may help when, for example, cutting has to be very precise
  293. (i.e. you know the number of pixels you want to cut off from the sides).
  294.  
  295. \\\\\\\\\\\
  296.  Digitiser
  297. ///////////
  298.  
  299. This groups the digitiser controls. It is only accessible when the Zeridajh
  300. Video Digitiser podule is present. When the podule is not present, the icons
  301. will have no effect. They enable you to control the digitiser and grab images.
  302.  
  303. \\\\\\\\\\\\\\\\\\\\\\\\\
  304.  Digitiser | Sensitivity  ***
  305. /////////////////////////
  306.  
  307. This slider bar may be used to control the sensitivity of the podule to the
  308. video signal.
  309.  
  310. The sensitivity may be changed from 0 (least sensitive) to 100% (most
  311. sensitive) by either dragging the slider, or clicking on the 'up'/'down'
  312. buttons to increase/decrease the sensitivity.
  313.  
  314. The slider bar may only be used when the software-controlled sensitivity
  315. extension (a special chip and some rewiring) is present on the podule.
  316. Otherwise, attempts at manipulation of the slider will have no effect, and the
  317. sensitivity must be controlled by using the potmeter at the back of the podule.
  318.  
  319. \\\\\\\\\\\\\\\\\\\\\\\
  320.  Digitiser | Line skip  ***
  321. ///////////////////////
  322.  
  323. In this writable icon you may enter the 'line skip' factor.
  324.  
  325. The line skip factor is the number of scanlines that will be skipped at the top
  326. of the video image that is being digitised.
  327.  
  328. A value of zero selects the default line skip (an equal number of scanlines
  329. above and below the picture is skipped). Any positive number may be entered,
  330. but, as a video image has a limited number of scanlines, values that are too
  331. large may cause the resulting image to be distorted.
  332.  
  333. \\\\\\\\\\\\\\\\\\
  334.  Digitiser | Size  ***
  335. //////////////////
  336.  
  337. These two radio icon sets enable you to set the X and Y size of the image to be
  338. grabbed.
  339.  
  340. Three resolutions are available for both X (640,320,160) and Y (512,256,128).
  341.  
  342. \\\\\\\\\\\\\\\\\\\\\\\\\\
  343.  Digitiser | Input switch
  344. //////////////////////////
  345.  
  346. This radio icon set lets you select one of four available video inputs.
  347.  
  348. This option is only available when the colour extension (a special chip and
  349. extra circuitry) is present on the podule. Otherwise, you cannot select any
  350. other input than the black & white input (which is the only input when the
  351. colour extension is not present).
  352.  
  353. \\\\\\\\\\\\\\\\\\\\\\\\
  354.  Digitiser | Grab image
  355. ////////////////////////
  356.  
  357. Clicking on this button will grab a new (black & white) image.
  358.  
  359. \\\\\\\\\\\\\\\\\\\\\\\\\
  360.  Digitiser | Grab colour
  361. /////////////////////////
  362.  
  363. Clicking on this button will grab, in sequence, an image from the red, green
  364. and blue inputs.
  365.  
  366. Grabbing starts after dragging the directory icon in the save window that has
  367. popped up to a directory viewer. The images will be saved as Clear files 'R',
  368. 'G' and 'B' in this directory.
  369.  
  370. The 'R','G' and 'B' greyscale Clear files may subsequently be edited (by
  371. reloading them into GreyEdit), and may be mixed to a full 24-bit RGB colour
  372. Clear file (see 'Mixing colour').
  373.  
  374. This option is only available when the colour extension is present on the
  375. podule (see 'Input switch').
  376.  
  377. \\\\\\\\\\\\\\\\\\\\\\\\\\
  378.  Digitiser | Video signal
  379. //////////////////////////
  380.  
  381. Clicking on this button temporarily pops up a video signal window.
  382.  
  383. This window will graphically display the synchronisation signals present in the
  384. video signal and enables strange or non-standard video signals to be
  385. identified. A rough classification of the present video signal is given at the
  386. bottom of the window (usually 'No video signal' or 'Normal video signal'). The
  387. signal plotted represents the exclusive or of the vsync and hsync signals.
  388.  
  389. Clicking any mouse button will abort the plotting (when not finished) and close
  390. the window.
  391.  
  392. \\\\\\
  393.  Misc
  394. //////
  395.  
  396. This groups miscellaneous options.
  397.  
  398. \\\\\\\\\\\\\\\\\\\\\\\
  399.  Misc | Auto | Palette  ***
  400. ///////////////////////
  401.  
  402. Toggles the 'auto palette' flag.
  403.  
  404. When ON, a greyscale palette is automatically selected when the image is first
  405. popped up, or after changing mode. In fact, the effect is exactly the same as
  406. clicking on the 'Grey palette' icon, refer to its discussion for more details.
  407.  
  408. \\\\\\\\\\\\\\\\\\\\
  409.  Misc | Auto | Zoom  ***
  410. ////////////////////
  411.  
  412. Toggles the 'auto zoom' flag.
  413.  
  414. When ON, then when the image is first popped up, or after changing mode, the
  415. image is automatically zoomed in or out (see the discussion of the zoom options
  416. elsewhere) so that it fits exactly on the screen.
  417.  
  418. \\\\\\\\\\\\\\\\\\\\\
  419.  Misc | Grey palette
  420. /////////////////////
  421.  
  422. Clicking on this button will select a greyscale palette from black to white.
  423.  
  424. NOTE : In 256-colour modes, the palette remains unchanged, as it is not
  425. possible to get more than 16 shades of grey by changing it. Refer to
  426. 'Displaying greyvalues' for more details.
  427.  
  428. \\\\\\\\\\\\\\\
  429.  Misc | Create
  430. ///////////////
  431.  
  432. Clicking on this button will create a blank image. The size of the image may be
  433. entered in the writable icons behind this button.
  434.  
  435. \\\\\\\\\\\\\\\\\
  436.  Misc | Patterns
  437. /////////////////
  438.  
  439. These buttons allow the current image to be filled with a computed pattern.
  440.  
  441. This may be useful in experimentation or, for example, creation of 'special
  442. effects' images (e.g. for desktop icons).
  443.  
  444. Clicking on one of the 'pattern' icons will create the pattern shown.
  445.  
  446. Most patterns apply the entire greyscale from black to white, e.g. the 'blinds'
  447. pattern consists of lines from greyvalue 0 (top) to 255 (bottom), and as much
  448. greyvalues in between as the resolution allows.
  449.  
  450. \\\\\\
  451.  Zoom
  452. //////
  453.  
  454. This group contains controls with which the image may be zoomed in or out.
  455.  
  456. The X and Y zoom ratios may be entered seperately, and the up/down buttons
  457. increment/decrement the multiplier/divisor.
  458.  
  459. In addition, clicking MENU over either the 'X' or 'Y' icon pops up a menu with
  460. preset zoom factors for X and Y respectively, which enables quick common
  461. selections.
  462.  
  463. To let manually entered zoom factors take effect, click on the button at the
  464. far left of the window.
  465.  
  466. The image window's title will indicate how much the original image is enlarged
  467. or reduced, by showing a percentage.
  468.  
  469. \\\\\\
  470.  Save
  471. //////
  472.  
  473. This icon leads to a save file window, in which the current image may be saved
  474. either as a Clear file, or as a (tweaked) sprite file by entering a (leaf)
  475. filename and dragging the filetype icon to a directory viewer.
  476.  
  477. \\\\\\\\\\\\\
  478.  Save | Save  ***
  479. /////////////
  480.  
  481. These radio icons enable selection of a Clear or a sprite file.
  482.  
  483. - Clear
  484.  
  485. The Clear file saved will be 8-bit grey-scale.
  486.  
  487. Further processing (scale, rotate, mirror, Floyd-Steinberg dithering, etc.) or
  488. conversion to other graphics formats may be performed by using my other image
  489. processing applications Translator and Creator respectively. Refer to the end
  490. of this guide for more details.
  491.  
  492. - Sprite
  493.  
  494. The Sprite file saved will be 8-bit, with no palette (i.e. standard palette
  495. actually). The greyvalues of the image are mapped (1-1) to the closest colours
  496. in the standard 256-colour palette that represent them when the sprite is
  497. displayed on a monochrome monitor.
  498.  
  499. \\\\\\\\\\\\\\\\\\
  500.  Save | Auto name  ***
  501. //////////////////
  502.  
  503. Toggles the 'auto name' flag.
  504.  
  505. When ON, the leafnames for files to be saved are generated automatically from a
  506. list that may be entered in the writable icon below the toggle icon.
  507.  
  508. The list consists of leafnames, seperated by comma's. The leafnames are taken
  509. cyclically from this list, so 'R,G,B' generates 'R', then 'G', then 'B', then
  510. 'R', then 'G', etc..
  511.  
  512. The current leafname is reset to the first in the list by switching 'Auto name'
  513. to ON.
  514.  
  515. So, if, for any reason, you want to reset the current leafname to the first one
  516. in the list, simply switch the 'auto name' flag off, then on again.
  517.  
  518. ----------
  519. | Status |
  520. ----------
  521.  
  522. This icon gives access to a submenu of status handling functions.
  523.  
  524. GreyEdit's status consists of all the items marked ***.
  525.  
  526. - Save
  527.  
  528. Clicking on this icon will save the current status in GreyEdit's status file.
  529.  
  530. This file (when present) is always loaded on startup, or may be explicitly
  531. loaded by using the 'Load' option (to override the current status).
  532.  
  533. - Load
  534.  
  535. Clicking on this icon explicitly (re-)loads the status file, overriding the
  536. current status.
  537.  
  538. - Default
  539.  
  540. Clicking on this icon selects the default status settings.
  541.  
  542. - Kill
  543.  
  544. Clicking on this icon will remove the status file. 'Standard' defaults will
  545. be used when GreyEdit is next started up.
  546.  
  547.  
  548. -----------------
  549. - Mixing colour -
  550. -----------------
  551.  
  552. A triple of 'red','green' and 'blue' Clear files may be mixed to a full 24-bit
  553. RGB colour Clear file by GreyEdit.
  554.  
  555. To do this, the following must apply :
  556. - The three component files must be of the same resolution
  557. - The red, green and blue component files must be saved inside a directory as
  558.   'R','G' and 'B' respectively.
  559.  
  560. Dragging the directory's icon to GreyEdit's iconbar icon or one of its windows
  561. will pop up a save window, in which the leafname of the resulting 24-bit RGB
  562. Clear file may be entered (it will default to the directory name). Dragging the
  563. Clear icon to a directory viewer will then mix the three component files.
  564.  
  565. The 24-bit RGB Clear file may be viewed using Translator (see end of this guide
  566. for more details on Translator).
  567.  
  568.  
  569. -------------------------
  570. - Displaying greyvalues -
  571. -------------------------
  572.  
  573. As the Archimedes can display only 16 shades of grey, it is not possible to
  574. give a correct representation of the full 0-255 greyscale range of the image,
  575. even in 256 colour modes.
  576.  
  577. In 16, 4 and 2 colour modes, a selection of the 16 available greys is made to
  578. create a scale from black to white, and the full greyscale is simply mapped to
  579. the closest of these greys.
  580.  
  581. In 256-colour modes (and when saving an image as a sprite), the full greyscale
  582. of the image is mapped (1-1) to the colours of the standard 256-colour palette
  583. which closely represent them when the sprite is being displayed on a monochrome
  584. monitor (for example, using the mono video output on the back of the
  585. Archimedes). This is the only way to get more shades of grey on-screen.
  586.  
  587. To get the best possible result on colour monitors (i.e. using a maximum of 16
  588. shades of grey), save the image as a Clear file and use Translator's
  589. Floyd-Steinberg dithering option (and the 'Current mode' and 'Greyscale'
  590. palette settings when dithering to non-256 colour modes).
  591.  
  592.  
  593. ---------------------
  594. - Technical details -
  595. ---------------------
  596.  
  597. - The GreyEdit module
  598.  
  599. The SWI's contained in the GreyEdit module may be useful to users that wish to
  600. build their own image processing or digitizing applications. Refer to the file
  601. Docs.SWIs for detailed descriptions.
  602.  
  603. - Image filters
  604.  
  605. The filters apply a 'local' filtering algorithm to the image. Most filters are
  606. '3x3 local neighborhood' filters, which means that for every pixel in the
  607. image, the surrounding eight pixels are considered, together with the current
  608. value of the pixel, to compute a new pixel value according to the algorithm
  609. used.
  610.  
  611. Most algorithms attach 'weights' to these 9 pixels and calculate the new
  612. greyvalue by adding all (or some of) the pixel values, multiplied with these
  613. weights, and then divide the result by the total weight to average it.
  614.  
  615. All these filters map any pixels lying 'outside' the image to the nearest image
  616. pixel (i.e. this occurs for all target pixels at the 4 borders).
  617.  
  618. The individual filters are discussed below. The 'target' pixel is always the
  619. 'middle' pixel, and these terms are used interchangably. The number of pixels
  620. in the neighborhood of this 'middle' pixel that are considered depends on the
  621. filter.
  622.  
  623. Noise (soft)
  624. ------------
  625. If the pixel left to the target pixel is equal (in greyvalue) to the right
  626. pixel, the middle pixel is replaced with the left (=right) pixel value.
  627.  
  628. Noise (strong)
  629. --------------
  630. If the target pixel is either the maximum or the minimum among the north,
  631. south, east and west pixels, it is replaced with the average value of the
  632. north, south, east and west pixels (this is usually called 'outlier pixel
  633. removal' in image processing literature).
  634.  
  635. Gauss, lowpass filter
  636. ---------------------
  637. The target pixel becomes the weighted average of the greyvalues of the nw,n,ne,
  638. w,mid,e, sw,s,se pixels with corresponding weigths : 1,2,1, 2,4,2, 1,2,1 (i.e.
  639. the sum DIV 16 is calculated for the middle pixel).
  640.  
  641. Average, lowpass filter
  642. -----------------------
  643. Weighted average, all weights equal to 1 (i.e. result is sum DIV 9).
  644.  
  645. Laplace, highpass filter
  646. ------------------------
  647. Weighted average, with weights 0,-1,0, -1,5,-1, 0,-1,0 (i.e. sum is calculated,
  648. and a range check is done (<0 becomes 0, >255 becomes 255)).
  649.  
  650. Grad-x Sobel, highpass filter
  651. -----------------------------
  652. Weighted average, with weights -1,0,1, -2,0,2, -1,0,1 (i.e. sum is calculated,
  653. 127 is added, and a range check is done).
  654.  
  655. Grad-y Sobel, highpass filter
  656. -----------------------------
  657. Weighted average, with weights -1,-2,-1, 0,0,0, 1,2,1 (calculation as under
  658. Grad-x Sobel filter).
  659.  
  660. Maximum
  661. -------
  662. The middle pixel becomes the maximum value of all nine pixels.
  663.  
  664. Minimum
  665. -------
  666. The middle pixel becomes the minimum value of all nine pixels.
  667.  
  668. Sharpen (soft), highpass filter
  669. -------------------------------
  670. Weighted average, with weights -1,-1,-1, -1,24,-1, -1,-1,-1 (i.e result is sum
  671. DIV 16, with range check).
  672.  
  673. Sharpen (strong), highpass filter
  674. ---------------------------------
  675. Weighted average, with weights -1,-1,-1, -1,16,-1, -1,-1,-1 (i.e result is sum
  676. DIV 8, with range check).
  677.  
  678. Lee, crispening filter
  679. ----------------------
  680. For every pixel, either the local minimum or maximum, whichever is closest to
  681. the original.
  682.  
  683. - Histogram equalization
  684.  
  685. First, a 'cumulative histogram' is calculated that contains the cumulative
  686. frequencies of the greyvalues in the entire range (i.e. the cumulative value of
  687. greyvalue 255 is always equal to the total number of pixels in the image).
  688.  
  689. The cumulative histogram is then scaled down and used as a transformation
  690. factor table to map the old greyvalue range to the full 0-255 greyvalue range.
  691. This yields a new cumulative histogram graph that is as 'flat' as possible,
  692. i.e. the greyvalue content of the image has been 'balanced'.
  693.  
  694.  
  695. ----------------
  696. - Memory usage -
  697. ----------------
  698.  
  699. GreyEdit automatically grabs the memory it needs to load/grab an image, and
  700. releases it again when the image is discarded (i.e. the image window is closed
  701. or a new image is loaded/grabbed) or cut down.
  702.  
  703. This ensures that it always runs in the minimum amount of memory and that you
  704. don't need to worry about how much memory to allocate to it. Users of 1Mb
  705. machines will appreciate this scheme, which enables larger images to be handled
  706. without trouble when multitasking with other applications.
  707.  
  708.  
  709. ------------------------
  710. - Translator & Creator -
  711. ------------------------
  712.  
  713. These applications, which were also written by me, are essential companions to
  714. GreyEdit.
  715.  
  716. Translator reads a very large number of (mainly foreign) graphics formats, and
  717. can perform colour processing, dithering, scaling, rotate, etc.. It outputs
  718. either sprite or Clear files. All graphic formats accepted by Translator may be
  719. converted to grey-scale Clear files (to be used as input for GreyEdit) by using
  720. the 'Black and white' and Clear output options.
  721.  
  722. Creator creates a number of (mainly foreign) graphics formats, accepting Clear
  723. files and sprite files as input. It can create GIF, TIFF, AIM and PBMPlus
  724. formats at present. This enables you to port images to a large number of other
  725. computer platforms.
  726.  
  727. Translator and Creator are available from the address mentioned below and are
  728. part of my shareware image processing package.
  729.  
  730.  
  731. -----------
  732. - The end -
  733. -----------
  734.  
  735. This application is Shareware, and part of the image processing package
  736. consisting of !Translator, !Creator and !GreyEdit.
  737.  
  738. I have put a lot of effort and time into these programs. Therefore, if you find
  739. any of them useful, I kindly ask you to register yourself as a user of these
  740. programs. The registration fee is just 35 dutch guilders. You will receive a
  741. free disc with the latest versions of Translator, Creator, GreyEdit, and most
  742. of my other applications.
  743.  
  744. You may not use or have this software in your posession beyond a two-week trial
  745. period without registering.
  746.  
  747. Services that offer software for download (BBSses, mail servers, ftp sites,
  748. etc.), and PD/Shareware libraries and the like, may *not* store this software
  749. without my approval.
  750.  
  751. If you want to register, or if you have praise, complaints, comments, bugs(!),
  752. or anything else to offer me, do not hesitate to write to
  753.  
  754. John Kortink
  755. Nutterbrink 31
  756. 7544 WJ Enschede
  757. The Netherlands
  758.  
  759. or try email to john@dialis.hacktic.nl.
  760.  
  761. Payment NOTE
  762. ------------
  763. Payment in CASH ONLY PLEASE, in any currency, for the equivalent of 35 dutch
  764. guilders (England £10). The only exceptions may be (in order of preference) :
  765.  
  766. a) A Eurocheque, for 35 dutch guilders, *with* pass-number on the back
  767. b) Postal exchange for 35 dutch guilders
  768. c) Any other form of payment, which gets charged by the bank, but which I'm
  769.    happy to accept if I end up with 35 dutch guilders after bank charges.
  770.    Typical bank charges are £8 on any non-a) payment.
  771.  
  772. Updates NOTE
  773. ------------
  774. If you want Translator or Creator to handle a new format, always send me full
  775. information, and several example files.
  776.  
  777. For registered users, new versions of the applications are available from the
  778. same address : just send £1 to cover postage and a self-addressed envelope
  779. containing a formatted 3.5" disc. You will receive the latest versions. Discs
  780. will always be returned immediately, and will not be put 'on hold' awaiting
  781. new versions.
  782.  
  783. NOTE : I will *not* send new versions to unregistered users. Ask yourself if
  784. you wouldn't be better off registering, if only to get new versions easily.
  785.  
  786. Happy imaging !!!
  787.  
  788. _______________________________________________________________________________
  789.  
  790. !!! NOTE !!!
  791.  
  792. You may NOT change this application or use ANY part of it in other products
  793. without my approval. You may spread it freely (with *ALL* files included), but
  794. not for any profit. This software is provided 'as is'. Using it is entirely at
  795. your own risk.
  796.  
  797. This application may NOT be distributed as an 'extra' in commercial products.
  798. You are kindly invited to contact me to discuss financial details, should you
  799. want to do so.
  800.  
  801. _______________________________________________________________________________
  802.  
  803.